There are many scenarios in which a delay occurs before a user can begin a desired task on a computer, because file resources required for the task are not immediately available to the device. One example is when a user logs onto a networked computer for the first time, and specific applications, user data, and settings need to be downloaded from a central server for the user. Another example is where a single person uses multiple computers (e.g., a desktop and a laptop). When the user operates one of the computers (e.g., the desktop), the user's activity has effects such as changing data, creating and deleting files and modifying configuration settings. When the user next operates the other computer (e.g., the laptop), these modified file resources need to be copied to the other computer.
Application streaming provides the ability for an endpoint (e.g., a client computer) to run an application locally that is stored remotely, for example on a server. The server can transmit specific portions of the application as well as associated file resources to the endpoint, as the endpoint needs them. Commercial application streaming technology exists today.
A network file system is a computer file system that supports sharing of resources such as files, printers and/or persistent storage over a computer network. Network file systems such as Andrew File System (AFS), NetWare Core Protocol (NCP), and Server Message Block (SMB, also known as Common Internet File System (CIFS)) exist today. Network file systems can share files, including executable files, between servers and endpoints.
In a co-pending, commonly assigned patent application, the use of a local index of a set of file resources is disclosed, such that application streaming technology or network file systems can simulate local storage of the entire set of file resources. This is true even though some or all of the file resources are actually stored remotely. The streaming technology or the like can be used to transfer remotely stored file resources as needed, by using the index.
Returning to the scenario discussed above in which a single users runs both a desktop and a laptop, imagine that these computers are both used for the same work related tasks, and both use roaming profiles. A roaming profile, such as those provided by Central identity management software (e.g., Microsoft's Active Directory®) allows individual users to login to any computer in an enterprise network, and automatically have their personal settings copied to that computer. Thus, the user can experience the same computing environment on both computers. However, under such a scenario, a synchronization operation will need to occur every time the user logs into one of the computers, to copy the updated file resources to that computer. This synchronization can be time consuming, causing the delay discussed above. The use of the application streaming technology index solution can shorten the delay, but a delay still occurs.
It would be desirable to be able to provide relevant file resources to computing devices without experiencing these problems.